//这是一个C++中逻辑运算符的代码案例
//任务：掌握C++中逻辑运算符的意义，用法及用途
#include <iostream>
using namespace std;

int main() {
    // ! 非（如果a为假，则!a为真；若a为真，则!a为假）
    //在C++中除0外 都为真
    int a = 10; //真
    cout << bool(a) << endl;
    cout << !a << endl; // 0
    cout << !!a << endl; //1
    //总结：真变假，假变真

    // && 与 (同真为真，其余为假)
    int b = 10;
    int c = 10;
    cout << (b && c) << endl; // 1
    b = 0; //改变b的值使其为假
    cout << (b && c) << endl; // 0

    // || 或 （同假为假，其余为真）
    int d = 10;
    int e = 10;
    cout << (d || e) << endl; //1
    d = 0;
    cout << (d || e) << endl;
    e = 0; 
    cout << (d || e) << endl;
    return 0;
}